package com.cs.deviceManager.device;

/**
 * 设备事件监听器
 */
public interface DeviceEventListener {

    /**
     * 设备连接状态变化（上线/下线）
     */
    void onDeviceConnected(String deviceId);

    /**
     * 设备恢复（断线重连）
     */
    void onDeviceRecovered(String deviceId,String data);

    /**
     * 设备断开连接
     */
    void onDeviceDisconnected(String deviceId);

    /**
     * 设备上报遥测数据（如温度、湿度等）
     */
    void onDeviceTelemetry(String deviceId, String data);

    /**
     * 设备异常上报
     * @param deviceId 设备ID
     * @param abnormality 异常类型
     */
    void onDeviceAbnormality(String deviceId,String abnormality);

    /**
     * 设备文本上报
     * @param deviceId 设备ID
     * @param text 文本数据
     */
    void onDeviceText(String deviceId,String text);


    void onDeviceBinary (String deviceId,byte[] data);

}